Method and system for configurable security and surveillance systems

ABSTRACT

A method and system for a configurable security and surveillance system are provided. A configurable security and surveillance system may comprise at least one programmable sensor agent and/or at least one programmable content analysis agent. A plurality of processing features may be offered by the configurable security and surveillance system by programming configurable hardware devices in the programmable sensor agents and/or the programmable content analysis agents via a system manager. Device programming files may be utilized to program the configurable hardware devices. The device programming files may be encrypted and decryption keys may be requested to enable the programming of different processing features into the programmable sensor agents and/or the programmable content analysis agents. The device programming files and/or the decryption keys may be received via a network transfer and/or via a machine-readable media from an e-commerce vendor.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/130,729, filed Apr. 15, 2016, which is a continuation of U.S. patentapplication Ser. No. 14/594,867 filed on Jan. 12, 2015, now U.S. Pat.No. 9,342,978, issued May 17, 2016, which is a continuation of U.S.patent application Ser. No. 11/107,671 filed on Apr. 15, 2005, theentirety of each application is hereby incorporated herein by reference.

TECHNICAL FIELD

Certain embodiments of the invention relate to security systems. Morespecifically, certain embodiments of the invention relate to a methodand system for configurable security and surveillance systems.

BACKGROUND

Security and surveillance operations may require security managementsystems that are capable of providing either a single security functionor, in some instances, a wide range of integrated security functions.Most security management systems, however, are designed to operate asautonomous systems that provide a single security function such asintrusion detection, access control, or audio and/or video surveillanceand recording, for example. These security management systems may notgenerally support the addition of other security functions and/or theaddition of other features to an existing security function without asubstantial investment in hardware and/or software. As a result,multiple security management systems are generally utilized when aparticular application requires multiple security functions. In thisregard, any integration that may be necessary to efficiently and/oreffectively operate multiple security management systems is typicallyleft to an installer, an integrator, and/or the customer to carry out.

One of the needs driving security management systems capable ofsupporting a wide range of integrated security functions and/or featuresare security operations for large enterprises or entities. These largeentities may have many different security requirements extending overmultiple locations. A centrally monitored integrated security managementsystem may allow administrators or controllers at a central controlcenter to efficiently oversee the many security activities that aresupported at the remote facilities.

The limited ability of most security management systems to add securityfunctions, to add features to existing security functions, and/or toeasily integrate with other security management systems generallyresults in an inefficient use of available resources. For example,multiple security management systems that have not been efficientlyintegrated may have multiple data entry points and/or duplicatedatabases. Moreover, limited integration capability may also createinefficient use of personnel by duplicating data entry tasks, requiringmanual data exchange between systems, and implementing multiple trainingrequirements for the various systems being utilized. Moreover, even whenintegration between multiple security management systems has beeneffectively implemented, continued compatibility may be lost whenhardware and/or software on various portions of at least one of themultiple security management systems is upgraded.

A common security function that is generally provided in securitymanagement systems is video surveillance. Video surveillance operationsmay require, in some instances, to be provided with additional featuresor may require compatibility with other security functions. Most videosurveillance operations are provided by stand-alone closed circuittelevision (CCTV) systems that are commonly found in, for example,office buildings, external structures, schools, railway stations, andeven on city streets. An effectively integrated security managementsystems may require that a CCTV system be compatible with other securityfunctions such as access control methods augmented with biometrics,security tracking systems, and/or access tracking systems, for example.However, most CCTV systems are not easily upgradable nor are they easilyintegrated with other security functionality. As a result, integratedsecurity management systems comprising video surveillance operations arenot readily available. Moreover, the ability of these integratedsecurity management systems to evolve and provide further securityfunctions and/or additional features are generally limited or may beaccomplished only with a substantial investment in hardware and/orsoftware.

Further limitations and disadvantages of conventional and traditionalapproaches will become apparent to one of skill in the art, throughcomparison of such systems with some aspects of the present invention asset forth in the remainder of the present application with reference tothe drawings.

SUMMARY

A system and/or method for configurable security and surveillancesystems, substantially as shown in and/or described in connection withat least one of the drawings, as set forth more completely in theclaims.

Various advantages, aspects and novel features of the present invention,as well as details of an illustrated embodiment thereof, will be morefully understood from the following description and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A illustrates an exemplary analog security and surveillancesystem, in connection with an embodiment of the invention.

FIG. 1B illustrates an exemplary Internet protocol (IP)-based securityand surveillance system, in connection with an embodiment of theinvention.

FIG. 2A illustrates an exemplary configurable security and surveillancesystem with programmable sensor agents, in accordance with an embodimentof the invention.

FIG. 2B illustrates an exemplary configurable security and surveillancesystem with programmable sensor agents and a programmable contentanalysis agent, in accordance with an embodiment of the invention.

FIG. 2C illustrates an exemplary configurable security and surveillancesystem with programmable sensor agents, programmable content analysisagent, and an access controller, in accordance with an embodiment of theinvention.

FIG. 3 illustrates an exemplary network comprising a configurablesecurity and surveillance system and an e-commerce vendor, in accordancewith an embodiment of the invention.

FIG. 4A is a block diagram of an exemplary programmable sensor agent, inaccordance with an embodiment of the invention.

FIG. 4B is a block diagram of an exemplary programmable sensor agentadapted to generate descriptors, in accordance with an embodiment of theinvention.

FIG. 4C is a flow diagram illustrating exemplary steps for configuring aprogrammable sensor agent, in accordance with an embodiment of theinvention.

FIG. 5A is a block diagram of an exemplary programmable content analysisagent, in accordance with an embodiment of the invention.

FIG. 5B is a flow diagram illustrating exemplary steps for configuring aprogrammable content analysis agent, in accordance with an embodiment ofthe invention.

FIG. 6A illustrates an exemplary network comprising a residentialconfigurable security and surveillance system, in accordance with anembodiment of the invention.

FIG. 6B illustrates an exemplary network comprising a commercialconfigurable security and surveillance system, in accordance with anembodiment of the invention.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

Certain embodiments of the invention may be found in a method and systemfor a configurable security and surveillance system. In accordance withan embodiment of the invention, a configurable security and surveillancesystem may comprise at least one programmable sensor agent and/or atleast one programmable content analysis agent. A plurality of processingfeatures may be offered by the configurable security and surveillancesystem by programming configurable hardware devices in the programmablesensor agents and/or the programmable content analysis agents via asystem manager. Device programming files may be utilized to program theconfigurable hardware devices. The device programming files may beencrypted, and decryption keys may be requested to enable theprogramming of different processing features into the programmablesensor agents and/or the programmable content analysis agents. Thedevice programming files and/or the decryption keys may be received viaa network transfer and/or via a machine-readable media from ane-commerce vendor.

FIG. 1A illustrates an exemplary analog security and surveillancesystem, in connection with an embodiment of the invention. Referring toFIG. 1, there is shown an analog security and surveillance system 100that comprises at least one analog camera 102, a camera control unit104, a multiplexer 106, a system manager 110, and a videocassetterecorder (VCR) 108. The analog camera 102 may comprise suitable logic,circuitry, code, and/or hardware that may be adapted to capture videoinformation from a particular location. The analog camera 102 mayreceive control signals from the camera control unit 104 that may beutilized to control various operations, for example, zoom, tilt, and/orpan. The analog camera 102 may generate at least one video signal thatcorresponds to the video information captured by the analog camera 102.In some instances, the analog camera 102 may provide front endprocessing of the video information before generating the video signal.The analog camera 102 may transfer at least a portion of the generatedvideo signal to the multiplexer 106. The video signals may betransferred to the multiplexer 106 via coaxial cables, for example.

The system manager 110 may comprise suitable logic, circuitry, code,and/or hardware that may be adapted to allow a user to control theoperation of an analog camera 102, to control the recording of at leasta portion of the video signals generated by an analog camera 102, and todisplay at least a portion of the video information in the video signalsgenerated by an analog camera 102. In this regard, the system manager110 may be utilized to control at least a portion of the operation ofthe camera control unit 104, the multiplexer 106, and/or the VCR 108.The camera control unit 104 may comprise suitable logic, circuitry,code, and/or hardware that may be adapted to receive control informationfrom the system manager 110 via the multiplexer 104 and to generatecontrol signals from the received control information. The generatedcontrol signals may be transferred to at least one analog camera 102 tocontrol its operation.

The multiplexer 106 may comprise suitable logic, circuitry, code, and/orhardware that may be adapted to select a mode of operation. For example,during a recording mode, the multiplexer 106 may receive videoinformation from at least one analog camera 102 and may transfer thatvideo information to the VCR 108. During a playback mode, for example,the multiplexer 108 may retrieve stored video information from the VCR108 and may transfer the video information to a display portion of thesystem manager 110. The display portion of the system manager 110 maydisplay the video information from at least one analog camera 102 at thesame time. During a control mode, for example, the system manager 110may transfer control information to the camera control unit 104 via themultiplexer 106. During a display mode, for example, the videoinformation received from at least one analog camera 102 may bedisplayed directly to the display portion of the system manager 110. Insome instances, the multiplexer 106 may be adapted to have more than onemode of operation active at the same time. For example, the recordingmode and display mode may be utilized at the same time to record anddisplay video information onto the VCR 108 and the display portion ofthe system manager 110 respectively.

FIG. 1B illustrates an exemplary Internet protocol (IP)-based securityand surveillance system, in connection with an embodiment of theinvention. Referring to FIG. 1B, there is shown an IP-based security andsurveillance system 120 that comprises at least one analog camera 102 asdescribed in FIG. 1A, an IP network 112, a video server 122, at leastone IP-based digital camera 124, a router 126, a transfer controlprotocol/Internet protocol (TCP/IP) network 128, a system manager 130,and a data storage device 132. The analog camera 102 may be as describedin FIG. 1A. The IP network 112 may be a communication network that maybe implemented as a local area network (LAN), a wide area network (WAN),a campus area network (CAN), a metropolitan area network (MAN), and/or ahome area network (HAN), for example. The IP network 112 may be awireline and/or a wireless network and components coupled to the IPnetwork 112 may be coupled via a wireline and/or a wireless connection.

The video server 122 may comprise suitable logic, circuitry, code and/orhardware that may be adapted to receive video information from at leastone analog camera 102 and to transfer control information to at leastone analog camera 102. The video server 122 may be communicativelycoupled to the IP network 112 via a wireline and/or a wirelessconnection. The video server 122 may also be adapted to compress thevideo information received from an analog camera 102 and transfer thecompressed video information to the system manager 130 and/or the datastorage device 132, for example. The video server 122 may correspond toa specified network address in the IP network 112.

The IP-based digital camera 124 may comprise suitable logic, circuitry,code, and/or hardware that may be adapted to capture video informationand transfer video information to the IP network 112. The IP-baseddigital camera 124 may be adapted to receive control information via theIP network 112. The IP-based digital camera 124 may comprise an imagesensor, an image processor, and a compression engine. The image sensormay be, for example, a complementary metal-oxide-semiconductor (CMOS)image sensor or a charge-coupled device (CCD) image sensor and may beadapted to capture video information. The image processor may be, forexample, a digital signal processor (DSP) or a dedicated applicationspecific integrated circuit (ASIC) and may be adapted to performfront-end processing of the video information captured by the imagesensor. The compression engine may comprise suitable logic, circuitry,and/or code that may be adapted to encode the processed videoinformation before transfer to the IP network 112. The controlinformation received by the IP-based digital camera 124 may be utilizedto control, for example, zoom, tilt, and/or pan operations. EachIP-based digital camera 124 may correspond to a specified networkaddress in the IP network 112.

The router 126 may comprise suitable logic, circuitry, code, and/orhardware that may be adapted to communicatively couple the IP network112 with the TCP/IP network 128. The router 126 may transfer at least aportion of the video information captured by at least one analog camera102 and/or at least one IP-based digital camera 124 and a portion of thecontrol information generated by the system manager 130 to a device,component, and/or element communicatively coupled to the TCP/IP network128. The router 126 may correspond to a specified network address in theIP network 112. The TCP/IP network 128 shown in FIG. 1B may correspondto, for example, the Internet.

The data storage device 132 may comprise suitable logic, circuitry,and/or code that may be adapted to store at least a portion of the videoinformation captured by at least one analog camera 102 and/or at leastone IP-based digital camera 124. In some instances, the data storagedevice 132 may be part of a network attached storage (NAS) and/or astorage area network (SAN), for example. The data storage device 132 maycorrespond to a specified network address in the IP network 112.

The system manager 130 may comprise suitable logic, circuitry, and/orcode that may be adapted to control the operation of at least one analogcamera 102 and/or at least one IP-based digital camera 124. In thisregard, the system manager 130 may generate control information that maybe transferred to at least one analog camera 102 and/or at least oneIP-based digital camera 124 via the IP network 112. The system manager130 may also display at least a portion of the compressed videoinformation captured by an analog camera 102 and/or an IP-based digitalcamera 124. Moreover, the system manager 130 may receive informationstored in the data storage device 132 and may process and/or display thereceived information. The system manager 130 may correspond to aspecified network address in the IP network 112.

FIG. 2A illustrates an exemplary configurable security and surveillancesystem with programmable sensor agents, in accordance with an embodimentof the invention. Referring to FIG. 2A, there is shown a configurablesecurity and surveillance system 200 that comprises a first programmablesensor agent 202, a second programmable sensor agent 204, a thirdprogrammable sensor agent 206, a system manager 208, a data storagedevice 210, and a network 212. The network 212 may comprise suitablehardware that may be adapted to communicatively couple a plurality ofcomponents, devices, and/or elements. In this regard, the components,devices, and/or elements coupled to the network 212 may correspond tospecified network address and/or network locations in the network 212.The network 212 may be, for example, a TCP/IP network, but need not beso limited. In some instances, portions of the network 212 may beimplemented as wireless connections while other portions may beimplemented as wireline connections. Moreover, componentscommunicatively coupled to the network 212 may be coupled via wirelineor wireless connections, for example.

The first programmable sensor agent 202, the second programmable sensoragent 204, and the third programmable sensor agent 206 may comprisesuitable logic, circuitry, code, and/or hardware that may be adapted todetect a physical event, generate at least one signal that correspondsto the physical event detected, and transfer the generated signal to thedata storage device 210 and/or the system manager 208 via the network212. Three different types of programmable sensor agents are shown inFIG. 2A as examples to indicate that a plurality of programmable sensoragent types may be utilized to detect different physical events. As aresult, the types and the number of programmable sensor agents maydepend on the security functions that need to be integrated in theconfigurable security and surveillance system 200. For example, aprogrammable sensor agent may correspond to a surveillance camera, athermal sensor, or a biological/chemical sensor. In the exampleillustrated in FIG. 2A, each of the programmable sensor agents 202, 204,and 206 may correspond to a specified network address in the network212.

A programmable sensor agent may be adapted to receive controlinformation from the system manager 208 via the network 212. Moreover, aprogrammable sensor agent may be adapted to be programmed or configuredby the system manager 208. In this regard, the programming orconfiguration may be performed to add and/or remove features thatcorrespond to a security function or functions performed by aprogrammable sensor agent. The programming or configuration may beperformed dynamically, that is, while the configurable security andsurveillance system 200 is in operation. In other instances, theprogramming or configuration may be performed during installation orduring maintenance periods when at least a portion of the configurablesecurity and surveillance system 200 is not in operation.

The data storage device 210 may comprise suitable logic, circuitry,and/or code that may be adapted to store at least a portion of thesignals generated by the programmable sensor agents. In some instances,the data storage device 210 may be part of a network attached storage(NAS) and/or a storage area network (SAN), for example. The data storagedevice 210 may correspond to a specified network address in the network212. In some instances, more than one data storage device 210 may beutilized in the configurable security and surveillance system 200.

The system manager 208 may comprise suitable logic, circuitry, and/orcode that may be adapted to control the operation of at least one of theprogrammable sensor agents in the configurable security and surveillancesystem 200. In this regard, the system manager 208 may generate controlinformation that may be transferred to the programmable sensor agentsvia the network 212. The system manager 208 may also be adapted todisplay at least a portion of the information in the signals generatedby the programmable sensor agents. Moreover, the system manager 208 mayreceive information stored in the data storage device 210 and mayprocess and/or display the information received from the data storagedevice 210. The system manager 210 may correspond to a specified networkaddress in the network 212.

The system manager 208 may also be adapted to program or configuresecurity features into the programmable sensor agents in theconfigurable security and surveillance system 200. In this regard, thesystem manager may receive device programming files that may be utilizedto program or configure a portion of the programmable sensor agents inorder to provide new, additional, and/or upgraded security features. Thedevice programming files may be transferred to the correspondingprogrammable sensor agents via the network 212. In some instances, thedevice programming files received by the system manager 208 may beencrypted or protected. When the device programming files are encrypted,the system manager 208 may receive at least one decryption key orpassword that may be utilized to decrypt the encrypted deviceprogramming files or to gain access to the device programming files. Inthis regard, encryption and protection may be substantially similarrestrictions on the device programming files that they may be referredto interchangeably. When the device programming files have beendecrypted, the system manager 208 may transfer the device programmingfiles to the corresponding programmable sensor agents via the network212.

The system manager 208 may also be adapted to execute code or softwarethat may be adapted to perform control, management, and/or maintenanceoperations that may be utilized in the operation and/or theconfiguration of the configurable security and surveillance system 200.

FIG. 2B illustrates an exemplary configurable security and surveillancesystem with programmable sensor agents and a programmable contentanalysis agent, in accordance with an embodiment of the invention.Referring to FIG. 2B, there is shown a configurable security andsurveillance system 220 that differs from the configurable security andsurveillance system 200 in FIG. 2A in that a programmable contentanalysis agent 214 is shown communicatively coupled to the network 212.

The programmable content analysis agent 214 may comprise suitable logic,circuitry, and/or code that may be adapted to perform sensor analysisoperations and/or security analysis operations. For example, sensoranalysis operations may comprise, but need not be limited to, processingsensor information, classifying sensor information, and/or generatingcontrol information that may be transferred to other programmable sensoragents in the configurable security and surveillance system 220.Security analysis operations may comprise, but need not be limited to,identifying security anomalies, managing emergency situations, providingaccess control, and/or triggering alarms, for example. The results ofsensor analysis operations may be utilized to generate and/or addinformation to a comprehensive knowledge base that may be utilized by,for example, the security analysis operations. In this regard, theprogrammable content analysis agent 214 may store at least a portion ofthe results generated by the sensor analysis operations. Storage of theresults generated by the sensor analysis operations may be local on theprogrammable content analysis agent 214 and/or on the data storagedevice 210. The programmable content analysis agent 214 may correspondto a specified network address in the network 212. In some instances,more than one programmable content analysis agent 214 may be utilized bythe configurable security and surveillance system 220.

The programmable content analysis agent 214 may also be adapted toreceive control information from the system manager 208 via the network212. Moreover, the programmable content analysis agent 214 may beadapted to be programmed or configured by the system manager 208. Inthis regard, the programming or configuration may be performed to add,remove, and/or upgrade features that correspond to the sensor analysisoperations and/or security analysis operations performed by theprogrammable content analysis agent 214. The programming orconfiguration may be performed dynamically, that is, while theconfigurable security and surveillance system 220 is in operation. Inother instances, the programming or configuration may be performedduring installation or during maintenance periods when at least aportion of the configurable security and surveillance system 220 is notin operation.

FIG. 2C illustrates an exemplary configurable security and surveillancesystem with programmable sensor agents, programmable content analysisagent, and an access controller, in accordance with an embodiment of theinvention. Referring to FIG. 2C, there is shown a configurable securityand surveillance system 230 that differs from the configurable securityand surveillance system 220 in FIG. 2B in that an access controller 216is shown communicatively coupled to the network 212.

The access controller 216 may comprise suitable logic, circuitry, and/orcode that may be adapted to provide access to specified locations basedon a verified security clearance. For example, upon keycard and/orbiometric information verification, a user may enter a specifiedlocation or site in a building or campus covered by the configurablesecurity and surveillance system 230. Access to that area by the usermay be further detected by, for example, video surveillance functionsprovided by at least one programmable sensor agent located in thespecified location or site. The programmable sensor agents may transferinformation regarding the user to the programmable content analysisagent 214. The programmable content analysis agent 214 may process theuser information and may add the results to other information that mayhave been generated on that user and that may be currently storedinformation in the programmable content analysis agent 214 and/or in thedata storage device 210. A user may be represented by a label in theconfigurable security and surveillance system 230 and the user label maycorrespond to a data structure comprising information related that user.

In another example, security and/or emergency personnel may be searchingor attempting to locate a specified user. In this regard, the securityand/or emergency personnel may query the configurable security andsurveillance system 230 by label to locate the specified user. Dataavailable on the data structure that corresponds to the user label maybe utilized to accurately determine of the user's location. Whenadditional data is required, the configurable security and surveillancesystem 230 may send control information to at least a portion of theprogrammable sensor agents and/or the access controller 216 to obtainadditional data that may be utilized to locate the specified user.

The access controller 216 may provide an additional security function tothe other security functions, for example, video surveillance, performedby the configurable security and surveillance systems 230. Thisadditional security function may be controlled, at least in part, by thesystem manager 208. Moreover, the programmable content analysis agent214 may be utilized to integrate at least a portion of the accesscontrol functions and other security functions.

FIG. 3 illustrates an exemplary network comprising a configurablesecurity and surveillance system and an e-commerce vendor, in accordancewith an embodiment of the invention. Referring to FIG. 3, there is shownthe configurable security and surveillance system 230 as described inFIG. 2C, a security and surveillance features vendor (SSFV) 300, a firstmachine-readable media 302, a second machine-readable media 304, a firstrouter 306, a second router 308, and the TCP/1 P network 128 asdescribed in FIG. 1B.

The first router 306 may comprise suitable logic, circuitry, code,and/or hardware that may be adapted to communicatively couple thenetwork 212 in the configurable security and surveillance system 230 tothe TCP/IP network 128. The second router 308 may comprise suitablelogic, circuitry, code, and/or hardware that may be adapted tocommunicatively couple the SSFV 300 to the TCP/IP network 128.

The first machine-readable media 302 and the second machine-readablemedia 304 are examples of media that may be utilized to provide theconfigurable security and surveillance system 230 with deviceprogramming files, decryption keys, and/or operating software or codethat may be utilized by the system manager 208, the programmable contentanalysis agent 214, the data storage device 210, and/or the accesscontroller 216. While the first machine-readable media 302 as showncorresponds to at least one diskette and the second machine-readablemedia 304 as shown corresponds to at least one optical disk, othermachine-readable media may also be utilized in this regard.

The SSFV 300 may be an e-commerce vendor that provides a plurality offeatures that may be programmed into a programmable agent in theconfigurable security and surveillance system 230. A programmable agentmay refer to a programmable sensor agent such as those represented bythe programmable sensor agents 202, 204, and 206 and/or a programmablecontent analysis agent 214. The SSFV 300 may be adapted to receiverequests for device programming files and/or decryption keys that may beutilized to configure or program at least one of the programmableagents. Decryption keys may be requested from the SSFV 300 when at leasta portion of the device programming files is encrypted. The SSFV 300 maytransfer any requested programming files and/or decryption keys to thesystem manager 208 via the TCP/IP network 128 and the network 212. Insome instances, the SSFV 300 may transfer any requested programmingfiles and/or decryption keys to the system manager 208 via at least onemachine-readable media.

FIG. 4A is a block diagram of an exemplary programmable sensor agent, inaccordance with an embodiment of the invention. Referring to FIG. 4A,there is shown a programmable sensor agent 400 that comprises a sensor402, a first digital reconfigurable processor (DRP) 404, a second DRP406, and a memory block 408. The sensor 402 may comprise suitable logic,circuitry, code, and/or hardware that may be adapted to detect physicalevents. For example, for security functions that require videosurveillance, the sensor 402 may be a solid-state image sensor that maybe implemented utilizing CMOS or CCD technology. The sensor 402 may beadapted to generate at least one signal that corresponds to the detectedphysical events. The sensor 402 may be also adapted to receive controlinformation and/or to transfer generated signals that correspond to thedetected physical events to the first DRP 404.

The first DRP 404 and the second DRP 406 may comprise suitable logic,circuitry, and/or code that may be adapted to provide digitalprocessing. The first DRP 404 and the second DRP 406 may be referred toa configurable devices that may adapted to be configured or programmedin order to provide at least one feature for at least one securityfunction. The first DRP 404 or the second DRP 406 may be a digitalsignal processor (DSP), a central processing unit (CPU), a fieldprogrammable gate array (FPGA), or a complex programmable logic device(CPLD), for example.

The programmable sensor agent 400 may receive at least one deviceprogramming file to program or configure at least a portion of the firstDRP 404 and/or at least a portion of the second DRP 406. The deviceprogramming files may be code, embedded code, firmware, and/or compiledhardware description language (HDL) code in accordance with the type ofconfigurable device. For example, when utilizing a DSP and/or a CPU asconfigurable devices, at least a portion of the embedded code that isexecuted on the configurable device may be configured to provide new,additional, and/or upgraded features. In another example, when utilizingan FPGA and/or a CPLD as configurable devices, at least a portion of thelogic in the configurable device may be configured or programmed toprovide new, additional, and/or upgraded features. In some instances, anFPGA and/or a CPLD configurable device may be utilized as a processingengine that may be able to support an embedded operating system (OS),such as Linux, for example. In such instances, the logic and/or theembedded code that is executed on the FPGA and/or the CPLD configurabledevice may be configured or programmed to provide new, additional,and/or upgraded features.

The memory block 408 may comprise suitable logic, circuitry, and/or codethat may be adapted to store information generated from the first DRP404 and/or the second DRP 406. The memory block 408 may also be adaptedto transfer stored information to the first DRP 404 and/or the secondDRP 406. The memory block 408 may comprise at least one memory device.In some instances, the device programming files may be stored in thememory block 408 and may be transferred to the first DRP 404 and/or thesecond DRP 406 from the memory block 408.

As shown in FIG. 4A, the programmable sensor agent 400 may be adaptedfor video surveillance functions. For example, the sensor 402 maycapture video information and may provide front-end processing of thecaptured sensor information. When the sensor 402 is a color imagesensor, for example, the front-end operations performed by the sensor402 may comprise automatic gain control (AGC), color balancing, and/orwhite balancing. The first DRP 404 may receive the front-end processedvideo information from the sensor 402, and may perform additional imageprocessing features such as image interpolation, image correction,dynamic range enhancement, and/or noise filtering, for example. Thefirst DRP 404 may also be adapted to generate a processed sensor outputfrom the sensor information.

The second DRP 406 may receive at least a portion of the processedsensor information and may be adapted to provide image analysis and/orfailure management for the programmable sensor agent 400. For example,in case of a system failure, the second DRP 404 may activate a backuppower source to the programmable sensor agent 400. Moreover, the secondDRP 406 may also be adapted to provide maintenance features that may beoperated at specified times. For example, the second DRP 406 may beconfigured or programmed to detect dirt on a lens on the image sensor byanalyzing at least a portion of the processed video informationgenerated by the first DRP 404. When the lens is dirty, for example, asignal or message may be sent to the system manager 208 so that furtheraction may be taken.

FIG. 4B is a block diagram of an exemplary programmable sensor agentadapted to generate descriptors, in accordance with an embodiment of theinvention. Referring to FIG. 4B, there is shown a programmable sensoragent 414 that differs from the programmable sensor agent 400 in FIG. 4Ain that a third DRP 410 is communicatively coupled to the first DRP 404.The third DRP 410 may be a configurable device substantially asdescribed for the first DRP 404 and the second DRP 406. The third DRP410 may be utilized to generate data content descriptors from theprocessed sensor output generated by the first DRP 404.

As shown, the third DRP 410 may be adapted for video surveillancefunctions by further processing the processed sensor output generated bythe first DRP 404. In this regard, the third DRP 410 may be adapted togenerate video content descriptors. The video content descriptors maybe, for example, motion and/or color descriptors. Motion descriptors mayresult as a byproduct of other video or image processing operations sucha video compression, for example. A plurality of descriptors may begenerated in accordance with the level of integration desired amongsecurity functions.

FIG. 4C is a flow diagram illustrating exemplary steps for configuring aprogrammable sensor agent, in accordance with an embodiment of theinvention. Referring to FIG. 4C, after start step 422, in step 424,features may be selected that may be programmed into at least oneconfigurable device in at least one programmable sensor agent in aconfigurable security and surveillance system. In step 426, ane-commerce feature vendor may provide device programming files for theselected features. The device programming files may be transfer to theconfigurable security and surveillance system via a network connectionand/or via machine-readable media. In step 428, decryption keys may berequested and obtained from the e-commerce feature vendor for deviceprogramming files that are encrypted. The decryption keys may beprovided to the configurable security and surveillance system via anetwork connection and/or via machine-readable media.

In step 430, the encrypted device programming files may be decrypted byutilizing the decryption keys received in step 428. In step 432, thedevice programming files may be transferred to the programmable sensoragents to program the configurable devices. In step 434, the programmingof the configurable devices in the programmable sensor agents may beverified. In step 436, a user and/or installer of the configurablesecurity and surveillance system may determine whether new, additional,and/or upgraded features may be necessary in at least one programmablesensor agent. When a user may find new, additional, and/or upgradedfeatures necessary, the flow chart 420 may proceed to step 424 wherenew, additional, and/or upgraded features may be selected. When a usermay not require new, additional, and/or upgraded features, the flowchart 420 may proceed to end step 438.

FIG. 5A is a block diagram of an exemplary programmable content analysisagent, in accordance with an embodiment of the invention. Referring toFIG. 5A, there is shown a programmable content analysis agent 500 thatcomprises a first DRP 502, a second DRP 504, a third DRP 506, a fourthDRP 508, and a memory block 510. In some instances, more or fewerdigital reconfigurable processors may be utilized.

The first DRP 502, the second DRP 504, the third DRP 506, and the fourthDRP 508 may comprise suitable logic, circuitry, and/or code that may beadapted to provide digital processing and may be referred to aconfigurable devices that may adapted to be configured or programmed inorder to provide at least one feature for at least one securityfunction. The first DRP 502, the second DRP 504, the third DRP 506, andthe fourth DRP 508 may be a digital signal processor (DSP), a centralprocessing unit (CPU), a field programmable gate array (FPGA), or acomplex programmable logic device (CPLD), for example.

The programmable content analysis agent 500 may receive at least onedevice programming file to program or configure at least a portion ofthe first DRP 502, the second DRP 504, the third DRP 506, and/or thefourth DRP 508. The configurable devices may be programmed or configuredvia a programming file bus, for example. The device programming filesmay be code, embedded code, firmware, and/or compiled hardwaredescription language (HDL) code in accordance with the type ofconfigurable device. For example, when utilizing a DSP and/or a CPU asconfigurable devices, at least a portion of the embedded code that isexecuted on the configurable device may be configured to provide new,additional, and/or upgraded features. In another example, when utilizingan FPGA and/or a CPLD as configurable devices, at least a portion of thelogic in the configurable device may be configured or programmed toprovide new, additional, and/or upgraded features. In some instances, anFPGA and/or a CPLD configurable device may be utilized as a processingengine that may be able to support an embedded operating system (OS),such as Linux, for example. In such instances, the logic and/or theembedded code that is executed on the FPGA and/or the CPLD configurabledevice may be configured or programmed to provide new, additional,and/or upgraded features.

The memory block 510 may comprise suitable logic, circuitry, and/or codethat may be adapted to store information generated from the first DRP502, the second DRP 504, the third DRP 506, and/or the fourth DRP 508.The memory block 510 may also be adapted to transfer stored informationto the first DRP 502, the second DRP 504, the third DRP 506, and/or thefourth DRP 508. The memory block 510 may comprise at least one memorydevice. In some instances, the device programming files may be stored inthe memory block 510 and may be transferred to the first DRP 502, thesecond DRP 504, the third DRP 506, and the fourth DRP 508 from thememory block 408. Communication between the configurable devices and thememory block 510 may be performed via a memory bus, for example.

As shown in FIG. 5A, the programmable sensor agent 500 may be adapted toperform sensor analysis operations and/or security analysis operations.The sensor analysis operations may correspond to video surveillancefunctions, for example. In this regard, a portion of the first DRP 502,the second DRP 504, the third DRP 506, and/or the fourth DRP 508 may beutilized for video surveillance features and a remaining portion may beutilized for security analysis operations. For example, videosurveillance features may comprise motion detection, generation of shapedescriptors, object tracking, and/or object surveillance. Securityanalysis operations may comprise security event classification,generating control information to be transferred to programmable sensoragents, and/or system failure detection, for example.

In this regard, the first DRP 502, the second DRP 504, the third DRP506, and/or the fourth DRP 508 may be utilized to further processinformation or content generated by the programmable sensor agents. Thefirst DRP 502, the second DRP 504, the third DRP 506, and/or the fourthDRP 508 may communicate with the programmable sensor agents in aconfigurable security and surveillance system via a data bus, forexample.

FIG. 5B is a flow diagram illustrating exemplary steps for configuring aprogrammable content analysis agent, in accordance with an embodiment ofthe invention. Referring to FIG. 5B, after start step 522, in step 524,features may be selected that may be programmed into at least oneconfigurable device in at least one programmable content analysis agentin a configurable security and surveillance system. In step 526, ane-commerce feature vendor may provide device programming files for theselected features. The device programming files may be transfer to theconfigurable security and surveillance system via a network connectionand/or via machine-readable media. In step 528, decryption keys may berequested and obtained from the e-commerce feature vendor for deviceprogramming files that are encrypted. The decryption keys may beprovided to the configurable security and surveillance system via anetwork connection and/or via machine-readable media.

In step 530, the encrypted device programming files may be decrypted byutilizing the decryption keys received in step 528. In step 532, thedevice programming files may be transferred to the programmable contentanalysis agents to program the configurable devices. In step 534, theprogramming of the configurable devices in the programmable contentanalysis agents may be verified. In step 536, a user and/or installer ofthe configurable security and surveillance system may determine whethernew, additional, and/or upgraded features may be necessary in at leastone programmable content analysis agent. When a user may find new,additional, and/or upgraded features necessary, the flow chart 520 mayproceed to step 524 where new, additional, and/or upgraded features maybe selected. When a user may not require new, additional, and/orupgraded features, the flow chart 520 may proceed to end step 538.

FIG. 6A illustrates an exemplary network comprising a residentialconfigurable security and surveillance system, in accordance with anembodiment of the invention. Referring to FIG. 6A, there is shown anetwork 600 that comprises a residential configurable security andsurveillance system 602 substantially as described in FIGS. 2A-2C, amobile phone 604, a wireless center 626, a personal digital assistant(PDA) 606, a school 608, a satellite link 610, an emergency agency 612,a police center 614, a home 616, at least one core router 618, at leastone gate router 620, a commercial entity 624, a security andsurveillance features vendor (SSFV) 300 as described in FIG. 3, and aTCP/IP network 128 as described in FIG. 1B. The residential configurablesecurity and surveillance system 602 may be adapted to provide securityfunctions for a home and/or small commercial entities.

In operation, the SSFV 300 may provide device programming files and/ordecryption keys to configure the configurable security and surveillancesystem 602 via the TCP/IP network 128 and the network of at least onegate router 620 and at least one core router 618. The features providedby the device programming files may support access to the configurablesecurity and surveillance system 602 via the mobile phone 604 and/or thePDA 606 to a user. The user may utilize the mobile phone 604 and/or thePDA 606 as an interface to control at least a portion of the operationsand/or display at least a portion of the contents generated by theconfigurable security and surveillance system 602. In this regard, theuser may utilize the network of at least one gate router 620 and atleast one core router 618 to communicatively couple the wireless center626 and the configurable security and surveillance system 602.

The configurable security and surveillance system 602 may be adapted togenerate appropriate emergency signals and/or alarms to, for example,the school 608, the satellite link 610, the emergency agency 612, thepolice center 614, the commercial entity 624, and/or at least one home616 in accordance with the features configured into the residentialconfigurable security and surveillance system 602. For example, securitybreaches may be r ported to any of these locations in accordance to thefeatures supported by the residential configurable security andsurveillance system 602. The types of security breaches and/or thelocations to which the appropriate emergency signals are sent may dependon the security features received from the SSFV 300.

FIG. 6B illustrates an exemplary network comprising a commercialconfigurable security and surveillance system, in accordance with anembodiment of the invention. Referring to FIG. 6B, there is shown anetwork 630 that differs from the network 600 in FIG. 6A in that acommercial configurable security and surveillance system 622 isutilized. The commercial configurable security and surveillance system602 may be adapted to provide security functions for a large commercialentities and/or governmental entities. In this regard, the commercialconfigurable security and surveillance system 622 may be adapted tosupport a large number and wide range of programmable sensor agents andprogrammable content analysis agents. Moreover, new, additional, and/orupgraded features may be provided periodically and/or routinely by theSSFV 300 as a result of a commercial agreement.

The approach described herein may result in more effectively and/orefficiently integrated security and surveillance systems. The use ofconfigurable devices in the programmable sensor agents and theprogrammable content analysis agents provides significant flexibility inthe system architecture and may also increase the length of operation ofa security and surveillance system before significant investments arerequired. In this regard, a user may determine the security functionsand features necessary to their security operations while maintainingthe ability to add and/or modify their security operations withouthaving to replace significant portions of their existing hardware and/orsoftware.

Accordingly, the present invention may be realized in hardware,software, or a combination of hardware and software. The presentinvention may be realized in a centralized fashion in at least onecomputer system, or in a distributed fashion where different elementsare spread across several interconnected computer systems. Any kind ofcomputer system or other apparatus adapted for carrying out the methodsdescribed herein is suited. A typical combination of hardware andsoftware may be a general-purpose computer system with a computerprogram that, when being loaded and executed, controls the computersystem such that it carries out the methods described herein.

The present invention may also be embedded in a computer programproduct, which comprises all the features enabling the implementation ofthe methods described herein, and which when loaded in a computer systemis able to carry out these methods. Computer program in the presentcontext means any expression, in any language, code or notation, of aset of instructions intended to cause a system having an informationprocessing capability to perform a particular function either directlyor after either or both of the following: a) conversion to anotherlanguage, code or notation; b) reproduction in a different materialform.

While the present invention has been described with reference to certainembodiments, it will be understood by those skilled in the art thatvarious changes may be made and equivalents may be substituted withoutdeparting from the scope of the present invention. In addition, manymodifications may be made to adapt a particular situation or material tothe teachings of the present invention without departing from its scope.Therefore, it is intended that the present invention not be limited tothe particular embodiment disclosed, but that the present invention willinclude all embodiments falling within the scope of the appended claims.

What is claimed:
 1. A system comprising: a plurality ofnetwork-addressable devices including: at least one surveillance camera;and at least one programmable content analysis agent that includes atleast one configurable device, the programmable content analysis agentbeing configured to receive a device programming file, the deviceprogramming file corresponding to at least one new feature selected foraddition to or for upgrade of the programmable content analysis agent,and the configurable device in the programmable content analysis agentbeing configured to be programmed, based on the device programming file,to perform at least the selected new feature; and a system managerconfigured to program security features into one or more of thenetwork-addressable devices that are communicatively coupled to thesystem manager over a network, wherein once the configurable device isprogrammed, the new feature enables functionality in the programmablecontent analysis agent not previously performed in the programmablecontent analysis agent; and wherein the system manager is furtherconfigured to verify the programming of the configurable device in theprogrammable content analysis agent.
 2. The system of claim 1 whereinthe system manager is further configured to decrypt an at least oneencrypted device programming file based on at least one decryption keyto generate the device programming file.
 3. The system of claim 2wherein the system manager is further configured to receive thedecryption key transmitted over the network.
 4. A non-transitory machinereadable storage having stored thereon, computer program instructionsexecutable by at least one machine to cause the machine to carry out amethod comprising: receiving a device programming file in a programmablecontent analysis agent of a security and surveillance system, the deviceprogramming file corresponding to at least one new feature selected foraddition to or for upgrade of the programmable content analysis agent;programming at least one configurable device in the programmable contentanalysis agent to perform at least the selected new feature, theprogramming based on the received device programming file, and whereinthe new feature enables functionality in the programmable contentanalysis agent not previously performed in the programmable contentanalysis agent prior to the programming; and verifying the programmingof the configurable device in the programmable content analysis agent.5. The non-transitory machine readable storage of claim 4 wherein themachine is further caused to receive at least one programming keycorresponding to the device programming file.
 6. The non-transitorymachine readable storage of claim 4 wherein the machine is furthercaused to receive at least one programming key corresponding to thedevice programming file in response to requesting the programming key.7. The non-transitory machine readable storage of claim 4 wherein themachine is further caused to receive at least one programming keycorresponding to the device programming file, and wherein the machine isfurther caused to decrypt the device programming file using theprogramming key.
 8. The non-transitory machine readable storage of claim4 wherein the machine is further caused to determine whether anyadditional new features are needed for upgrading or updating theprogramming content analysis agent.
 9. The non-transitory machinereadable storage of claim 4 wherein the machine is further caused toprogram the configured device in the programming content analysis agentwith additional new features to perform at least the additional newfeatures based on a determination that additional new features areneeded.